前置++和后置++的区别

前置++和后置++在程序开发中使用十分频繁,那么你是否真正了解它们的区别呢?

其实++i相当于下面的代码:

1
2
i += 1;
return i;

而i++则相当于下面的代码:

1
2
3
j = i;
i += 1;
return j;

对于内建数据类型,其实前置++和后置++的效率相差不大,而对于自定义的数据类型,前置++返回对象的引用,而后置++则返回对象的值,所以导致在大对象的时候产生了较大的复制开销,引起效率降低。